As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
Information handling systems often use an array of physical storage resources, such as a Redundant Array of Independent Disks (RAID), for example, for storing information. Arrays of physical storage resources typically utilize multiple disks to perform input and output operations and can be structured to provide redundancy which may increase fault tolerance. Other advantages of arrays of physical storage resources may be increased data integrity, throughput and/or capacity. In operation, one or more physical storage resources disposed in an array of physical storage resources may appear to an operating system as a single logical storage unit or “logical unit.” Implementations of physical storage resource arrays can range from a few physical storage resources disposed in a server chassis, to hundreds of physical storage resources disposed in one or more separate storage enclosures.
The most common RAID levels in use today are RAID0, RAID1, RAID5, and RAID6. For RAID with redundancy, RAID1 or RAID10 mirroring may provide the highest performance with the least degradation to write performance. However, the downside to mirroring is that it halves the available storage capacity. RAID5 and RAID6 are more capacity-efficient, but often have poorer write performance due the fact that such arrays must employ read-modify-write operations when performing a write, in order to calculate parity information needed to ensure redundancy. In addition to increased latency, stress placed on physical storage devices during read-modify-write operations, particularly solid state storage devices (e.g., flash storage devices) that are increasingly used for storage of data, may reduce the useful life of such storage devices.